/**
 * 颜色工具函数
 * 用于生成图表颜色
 */

/**
 * 生成颜色数组
 * @param count 需要的颜色数量
 * @param alpha 透明度 (0-1)
 * @returns 颜色数组
 */
export const generateColors = (count: number, alpha: number = 0.6): string[] => {
  const colors = [
    'rgba(54, 162, 235, {alpha})',   // 蓝色
    'rgba(255, 99, 132, {alpha})',   // 红色
    'rgba(75, 192, 192, {alpha})',   // 青色
    'rgba(255, 206, 86, {alpha})',   // 黄色
    'rgba(153, 102, 255, {alpha})',  // 紫色
    'rgba(255, 159, 64, {alpha})',   // 橙色
    'rgba(199, 199, 199, {alpha})',  // 灰色
    'rgba(83, 102, 255, {alpha})',   // 深蓝色
    'rgba(255, 99, 255, {alpha})',   // 品红
    'rgba(99, 255, 132, {alpha})',   // 绿色
  ];

  const result: string[] = [];
  for (let i = 0; i < count; i++) {
    const color = colors[i % colors.length];
    result.push(color.replace('{alpha}', alpha.toString()));
  }

  return result;
};

/**
 * 生成边框颜色数组
 * @param count 需要的颜色数量
 * @returns 颜色数组
 */
export const generateBorderColors = (count: number): string[] => {
  return generateColors(count, 1);
};

